package cn.source.system.mapper;

import cn.source.system.domain.SysCompany;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 企业管理Mapper接口
 *
 * @author sourcebyte.vip
 * @date 2023-10-19
 */
public interface SysCompanyMapper {
    /**
     * 查询企业管理
     *
     * @param id 企业管理主键
     * @return 企业管理
     */
    public SysCompany  selectSysCompanyById(Long id);

    /**
     * 查询企业管理列表
     *
     * @param sysCompany 企业管理
     * @return 企业管理集合
     */
    public List<SysCompany> selectSysCompanyList(SysCompany sysCompany);

    /**
     * 新增企业管理
     *
     * @param sysCompany 企业管理
     * @return 结果
     */
    public int insertSysCompany(SysCompany sysCompany);

    /**
     * 修改企业管理
     *
     * @param sysCompany 企业管理
     * @return 结果
     */
    public int updateSysCompany(SysCompany sysCompany);

    /**
     * 删除企业管理
     *
     * @param id 企业管理主键
     * @return 结果
     */
    public int deleteSysCompanyById(Long id);

    /**
     * 批量删除企业管理
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSysCompanyByIds(Long[] ids);

    /** 新增企业的时候新增“全部商品分类” */
    public int insertMachineType(Long companyId);

    /** 修改客户/供应商的时候同步去修改历史单据 */
    public int batchUpdateBusiUnit(
            @Param("companyId") Long companyId,
            @Param("newName") String newName,
            @Param("oldName") String oldName);
}
